iT邦幫忙

2021 iThome 鐵人賽

DAY 17
1
自我挑戰組

新手全端工程師的職場成長歷程系列 第 17

Day17:【技術篇】SQL之其它常用語法

  • 分享至 

  • xImage
  •  

一、前言

  上一篇文章有稍微帶到簡單的SQL基本CRUD操作方式,但實際玩起來我覺得就和GIT一樣,是有趣而且多變的,熟悉語法就能在需要時妥善運用!

二、如何累積SQL能力與觀念?

  如果你是一個職場新手或者第一次接觸資料庫、碰SQL,那我推薦以下資源可以快速入門,網路資源真的超多,這邊分享的是我個人覺得實用與易懂的,表單裡的資源有連結可以直接點選。就不在此系列技術文中,冗長一一陳述語法了。

項次 資源重點 備註內容
1 SQL語法教學 各種指令大部分都可以在這裡學習。
2 初學者必須知道的懶人包 主要是給初學者方向與概念,搭配圖文淺顯易懂!
3 零基礎快速自學SQL,1天足矣 2021年9月才更新,算是觀念累積很實用!
4 【資料庫】SQL 3小時初學者教學(含MySQL教學) 2021年8月的影片教學,吃飯時可以配著看當複習也很好!
5 SQLZOO互動式教學 可以小試身手測試SQL語法的網站,有支援繁體中文,平常可以抽空實際練習。

三、(接案公司裡)常用的語法與實例

  這邊列出遇過的一些狀況劇與解決方法,讓大家稍微看一下其實操作那些數據一點也不難,都是很有趣的唷!如果在實際運用上,有遇到下列情形,也可以試試看是否有幫助~

1. 建立新的資料表時可能遇到的情況

  • 可能的狀況:
    Id需要隨數量增加而遞增

  • 解決方法:
    新增資料表時,在下方屬性的識別規格做設定。

2. 重新整理Id排序值

  • 可能的狀況
    I've deleted some records from a table in a SQL Server database.

The IDs in the table look like this:99 100 101 1200 1201...

  • 解決方法:
DBCC CHECKIDENT (mytable, RESEED, 0)

3. 查詢並去除重複值

  • 可能的狀況
    假設我們想從下面的 customers 資料表中查詢顧客分佈在哪幾個縣市:

  • 解決方法:
    原本資料表的 City 欄位中有兩個重複值台北市,可是我們只想知道有哪幾個縣市有顧客而已,故我們使用 DISTINCT 關鍵字來限制僅取出欄位中 "不相同" 的值。

SELECT DISTINCT City FROM customers;
  • 解決結果會撈出:
    台北市
    新竹縣
    高雄縣

4. 清空某張資料表的所有資料值,但原架構保留

  • 解決方法:
TRUNCATE TABLE "表格名";

四、結論與自我鼓勵

  不知道大家學習SQL的感受是什麼,我個人覺得很吃邏輯力!主要真的是至少要會去查關聯與運用語法,就可以完成大部分工作上的需求。下一篇則預計會介紹一點點MSSQL的介面,或其它技術主題~


本文同步發佈於我的個人網站 Annie Code Life


上一篇
Day16:【技術篇】SQL之基本CRUD處理能力
下一篇
Day18:【技術篇】HTML的冷門使用技巧
系列文
新手全端工程師的職場成長歷程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
kk00915
iT邦新手 4 級 ‧ 2021-10-02 11:45:39

感謝分享!有空就來研究看看

我要留言

立即登入留言